#include "wx/wxprec.h"
#include "wx/xrc/xh_sttxt.h"

IMPLEMENT_DYNAMIC_CLASS( wxStaticTextXmlHandler, wxXmlResourceHandler )

wxStaticTextXmlHandler::wxStaticTextXmlHandler()
  : wxXmlResourceHandler() {
  XRC_ADD_STYLE( wxST_NO_AUTORESIZE );
  XRC_ADD_STYLE( wxALIGN_LEFT );
  XRC_ADD_STYLE( wxALIGN_RIGHT );
  XRC_ADD_STYLE( wxALIGN_CENTRE );
  AddWindowStyles();
}

wxObject *wxStaticTextXmlHandler::DoCreateResource() {
  XRC_MAKE_INSTANCE( text, wxStaticText )
  text->Create( m_parentAsWindow,
                GetID(),
                GetText( wxT( "label" ) ),
                GetPosition(), GetSize(),
                GetStyle(),
                GetName() );
  SetupWindow( text );
  long wrap = GetLong( wxT( "wrap" ), -1 );
  if( wrap != -1 ) {
    text->Wrap( wrap );
  }
  return text;
}

bool wxStaticTextXmlHandler::CanHandle( wxXmlNode *node ) {
  return IsOfClass( node, wxT( "wxStaticText" ) );
}
